There has been a disconcerting increase in successful attacks by hackers on servers that are installed on the worldwide web (www) or on the Internet. Internet-based servers are known to be particularly susceptible to attack, in large part because Internet server applications of a particular type habitually “listen” on the same port number, irrespective of the server computer on which the application is executed. (A port number, here, does not connote correspondence to a physical port. Rather, a port number specifies an index into a software data structure (an array, for example) that exists in the server. In this sense, a port number is analogous to a telephone extension in an office. In order to access a server application that resides on a server computer, one must specify the port number (qua extension) on which the application listens.) The port on which a given server type is known to listen has become referred to in the art as the “well-known port number.” For example, the Telnet server's well-known port number is tcp/23. (As is known, Telnet refers to a client program that implements the Telnet protocol. The Telnet protocol, in turn, is a protocol in the TCP/IP (Transmission Control Protocol/Internet Protocol) suite that enables an Internet user to log on to and to enter commands on a remote computer that is linked to the Internet, as if the user were exercising a text-based terminal directly attached to the computer). Consequently, with no more than minimal ingenuity, an attacker may be able to break into a Telnet server application on, for example, a server having the address www.acme.com. The attacker merely uses the default client command “telnet www.acme.com” in order to obtain access to the Telnet server.
Having achieved access to the server, the hacker may pursue one or more of a number of hacking strategies. For example, the hacker may, by brute force, attempt to determine applicable username/password combinations. Alternatively, the hacker may attempt to create a buffer overflow. In this approach, the hacker seeks to create anomalous server performance through, for example, transmitting to the server a carefully crafted packet that exceeds the bounds of an applicable server buffer. In addition, the hacker may elect to exploit various other server defects. This strategy is unwittingly assisted by the efforts of entities, otherwise well intentioned, that periodically publicly announce newly discovered software defects.
It is evident from the above that, given the resourcefulness of those who would hack into, or otherwise acquire unauthorized access to, networked servers, including servers linked to the Internet or to the www, any technique that may hinder unauthorized access to a networked server represents a salutary advance in the state of the art.